The present invention relates to the field of web-based systems and methods for troubleshooting devices on a network.
Networks vary in scope from simple arrangements that connect a personal computer to a printer and external modem within the same room, to complex system that cover cities, regions and entire countries. As the complexity of a network increases, it is often broken down into segments and sub-networks linked together by routers, bridging circuits, switchers and headends. Each of these segments and sub-networks may operate with a different set of protocols such as the Transmission Control Protocol/Internet Protocol (TCP/IP), Open Systems Interconnection protocol, Apple Talk, Novell NetWare, or the IBM System Network Architecture. Various servers are found throughout the network to provide data, communications, security, and other services to clients on the networks and sub-networks. The clients interface to the network through one or more of several different devices. Individual clients have traditionally used internal and external modems to access the network via telephone lines. Larger clients typically have their own local area network linking each computer""s network interface card. A relatively new network interface device is a cable modem that uses cable television coax cable as the physical medium to communicate. Consequently, network providers must manage many different types of devices interconnected by a variety of networks, network segments and sub-networks and communicating with multiple protocols.
The increased popularity of the Internet has resulted in a widespread use of the TCP/IP for intra-network and inter-network communications. Using TCP/IP, each device on a network has a unique Internet Protocol (IP) address. Permanent, full time devices such as servers, routers, and headend nodes are assigned a unique static IP address. Mobile and part-time devices such as desktop and laptop personal computers are assigned a dynamic IP address from a pool of addresses when they first log onto a network. When the lease for a dynamic IP address expires, that IP address is returned to the pool of addresses where it is available for assignment to another device.
Use of dynamic IP addressing has advantages and disadvantages for support, operations and maintenance personnel. Dynamic IP addressing is an advantage for network configuration management. As new devices are added to a network, old devices are removed, and existing devices log on and log off different networks, the assignment of the IP addresses is handled automatically by the provisioning server application softwarexe2x80x94no manual reconfiguration is required. Dynamic IP addressing creates a disadvantage for searching, troubleshooting and verification activities because a key piece of information, the IP address itself, changes from time to time.
Once a desired device has been found on the network, troubleshooting, correction, and verification can be performed. Information necessary for these tasks is typically scattered in multiple authoritative sources such as the provisioning servers, application servers, directory servers, billing data bases, and trouble ticketing data bases. Personnel require access to multiple individual accounts on mission critical servers to obtain all of this information. Personnel also desire utilities to communicate with the desired device over the network since the desired device is often in a remote physical location. An example of one such utility is xe2x80x9cping.xe2x80x9d The ping function sends an Internet Control Message Protocol echo request command to the selected device. If the selected device is reachable, then an echo will be generated in response to the ping command. If no echo is received within a set time then the selected device is unreachable. An ability to troubleshoot, correct, and verify problems over the network from some central location saves considerable time and money compared to sending personnel to the devices in the field.
What is desired is an integrated tool that allows personnel to search for devices on the network, and to gather and display data associated with the selected device from the different databases and reports that are available on the network. It is also desirable for the integrated tool to contain embedded utilities that allow personnel to communicate with the devices, ask them for current parameters, send them new parameters, execute remote procedure calls, and even download software upgrades. The tool should also be portable so that personnel in the field can verify repairs and new installations from the field.
The present invention is a system and method for troubleshooting devices on a network where each device on the network is identifiable by a medium access control (MAC) address. Personnel interact with the system from a web browser using hypertext markup language (HTML) pages. A search capability allows the personnel to find a selected device based upon its MAC address, and display device specific data. The device specific data is maintained in a database internal to the system. Network configuration data is available from an external database. Update functions are provided to change the data in the internal database.
A suite of utility functions is also provided to aid in troubleshooting, maintenance, and verification. Communication between the system and devices is accomplished using the Simple Network Management Protocol. A Bridging Table function returns a listing of addresses that the device has learned on each of its ports. A Clear Error function clears the device""s packet error count. Register and De-register functions cause the device to be registered and de-registered respectively with a provisioning server. An Internet Protocol (IP) Address Filter function changes the device""s address filtering parameters. A Listen function reads the log file of the provisioning server and reports any packets containing the MAC address of the selected device. A Name Sever Lookup function provides the hostname for the selected device. The Ping function checks if a device is reachable. A Port Filter function changes the device""s port filter parameters. A Reset function causes a software reset on the selected device. An Upgrade function invokes a software download. Finally, a History function reads the device""s log file and displays the last couple of transactions.
Hyperlinks in the HTML pages are provided as a convenient way for the personnel to navigate to data associated with the selected device. A Personal Computer hyperlink is generally available when general information about a customer""s cable modem is displayed. This hyperlink jumps to a general information page containing data about the customer""s personal computer. A headend reference node hyperlink jumps to an information page containing data about the headend reference node associated with the customer""s cable modem. Finally, an e-mail hyperlink allows a customer to be e-mailed from the system.
Accordingly, it is an object of the present invention to provide a system that enables a web client on a network to troubleshoot multiple MAC addresses on the network.
Another object it to provide a computer having an interface to the network.
Another object is to provide a tool database that stores server data, owner data and health data for each MAC address.
Another object is to provide a web server application program that provides a set of standard protocols to facilitate communications. The web server application program also stores a most recent copy of the owner data supplied by periodic reports available on the network, and stores a most recent copy of the server data supplied by the provisioning servers.
Another object is to provide a tool application program that communicates with the tool database, the web client, provisioning servers on the network, and a headend database. When the web client enters one or more search parameters, the tool application program searches the tool database and a headend database for a match. Next the tool application program identifies a selected MAC address for the match, and provides the web client with a general information page containing the server data, owner data, and health data for the selected MAC address. When the web client enters an update health command, the tool application program obtains the current health parameters from the selected MAC address. When the web client enters an update owner command, the tool application program writes the most recent copy of the owner data stored by the web server application program into the tool database. When the web client enters an update server command, the tool application program writes the most recent copy of the server data stored by the web server application program into the tool database.
Yet another object of the present invention is to provide a method for a web client on a network to troubleshoot multiple MAC addresses on the network.
Another object is to provide storage of health data, owner data, and server data in a tool database.
Another object is to provide searching of the tool database and a headend database for a match to one or more search parameters entered by the web client. The match identifies a selected MAC address.
Another object is to provide a general information page to the web client containing the server data, owner data, and health data for the selected MAC address.
Another object is to obtain new health parameters from the selected MAC address and write them into the tool database.
Another object is to receive a most recent copy of the owner data from periodic reports available on the network, and to write it into the tool database.
Another object is to receive a most recent copy of the server data from the provisioning servers, and to write it into the tool database.
These and other objects, features and advantages will be readily apparent upon consideration of the following detailed description in conjunction with the accompanying drawings.